package acoes;

import java.util.ArrayList;

import acoes.interfaces.Acao;

public class AcaoFactory {
	private static AcaoFactory instancia;
	private ArrayList<Acao> acoes;
	
	private AcaoFactory(){
		acoes = new ArrayList<Acao>();
		acoes.add(new AcaoMain());
		acoes.add(new AcaoFormIncluirDisciplina());
		acoes.add(new AcaoIncluirDisciplina());
		acoes.add(new AcaoFormAlterarDisciplina());
		acoes.add(new AcaoAlterarDisciplina());
		acoes.add(new AcaoExcluirDisciplina());
	}
	
	public static AcaoFactory getInstance(){
		if (instancia == null)
			instancia = new AcaoFactory();
		
		return instancia;
	}
	
	public Acao criarAcao(String nomeAcao){
		Acao acao = null;
		
		for (Acao a: acoes){
			if (a.getNome().equalsIgnoreCase(nomeAcao)){
				acao = a.clone();
			}
		}
		
		return acao;
	}
}